<?php
class CriaderosController extends AppController
{
    public $helpers = array('Html', 'Form', 'Session', 'Js');
    public $uses = array('Criadero', 'Propietario', 'Tipo', 'Sucursale', 'Raza');
    public $components = array('Session');
    public $layout = 'default';

   /* function beforeFilter(){
        $this->checksession();
        $this->permisosCriaderos();

    }*/
    function index()
    {
        
       $this->paginate = array('Criadero' => array('limit' => 30));
       //$tipos = $this->TipoCriadero->find('list',array('fields'=>array('TipoCriadero.tipo')));
   
       $this->set('criaderos', $this->paginate('Criadero'));
     //  $this->set('tipos', $tipos);
    }
    function insertar()
    {

            if (!empty($this->data)):
               //debug($this->data);exit;
                $this->Criadero->create();
                if ($this->Criadero->saveAll($this->data)) {
                    $this->Session->setFlash('Criadero registrado nr'.$this->Criadero->id);
                    $this->redirect(array('action' => 'index'), null, true);
                } else {
                    $this->Session->setFlash('No se pudo registrar!!!');
                }
            endif;
            $propietarios = $this->Propietario->find('list', array(
                                                    'fields'=>array('Propietario.id', 'Propietario.nombre')
                                                    ));
            $tipos = $this->Tipo->find('list', array(
                                        'fields'=>array('Tipo.id', 'Tipo.nombre')
                                        ));
            $sucursales = $this->Sucursale->find('list', array(
                                        'fields'=>array('Sucursale.id', 'Sucursale.nombre')
                                        ));
            $razas = $this->Raza->find('list', array(
                                                    'fields'=>array('Raza.id', 'Raza.nombre')
                                                    )
                                       );
            $opt = array('1'=>'Alta', '0'=>'Baja');
            $this->set(compact('opt', 'propietarios', 'tipos', 'sucursales', 'razas'));
        }
        function editar($id = null)
        {
                $this->Criadero->id = $id;
                if (!$id) {
                    $this->Session->setFlash('No existe tal registro');
                    $this->redirect(array('action' => 'index'), null, true);
                }
                if (empty($this->data)) {
                    $this->data = $this->Criadero->read(); //find(array('id' => $id));
                } else {
                    if ($this->Criadero->saveAll($this->data)) {
                        $this->Session->setFlash('Los datos fueron modificados');
                        $this->redirect(array('action' => 'index'), null, true);
                    } else {
                        $this->Session->setFlash('no se pudo modificar!!');
                    }
                }
            $propietarios = $this->Propietario->find('list', array(
                                                    'fields'=>array('Propietario.id', 'Propietario.nombre')
                                                    ));
            $tipos = $this->Tipo->find('list', array(
                                        'fields'=>array('Tipo.id', 'Tipo.nombre')
                                        ));
            $sucursales = $this->Sucursale->find('list', array(
                                        'fields'=>array('Sucursale.id', 'Sucursale.nombre')
                                        ));
            $razas = $this->Raza->find('list', array(
                                                    'fields'=>array('Raza.id', 'Raza.nombre')
                                                    )
                                       );
            $opt = array('1'=>'Alta', '0'=>'Baja');
            $this->set(compact('opt', 'propietarios', 'tipos', 'sucursales', 'razas'));

            }
   function baja($id = null)
   {
              
                 $this->Criadero->id = $id;
                if (!$id) {
                    $this->Session->setFlash('No se pudo dar de baja');
                    $this->redirect(array('action' => 'index'), null, true);
                }
               
                   $estado = 0;
                   $this->request->data['Criadero']['estado'] = $estado;
                  
                    if ($this->Criadero->save($this->data)) {
                        $this->Session->setFlash('Los datos fueron modificados');
                        $this->redirect(array('action' => 'index'), null, true);
                    } else {
                        $this->Session->setFlash('no se pudo modificar!!');
                    }
               
            }
                 function alta($id = null)
        {
              
                 $this->Criadero->id = $id;
                if (!$id) {
                    $this->Session->setFlash('No se pudo dar de baja');
                    $this->redirect(array('action' => 'index'), null, true);
                }
               
                   $estado = 1;
                   $this->request->data['Criadero']['estado'] = $estado;
                  
                    if ($this->Criadero->save($this->data)) {
                        $this->Session->setFlash('Los datos fueron modificados');
                        $this->redirect(array('action' => 'index'), null, true);
                    } else {
                        $this->Session->setFlash('no se pudo modificar!!');
                    }
               
            }
            function eliminar($id = null)
            {
                    if (!$id) {
                        $this->Session->setFlash('id Invalida para reclamo');
                        $this->redirect(array('action' => 'index'), null, true);
                    }
                    if ($this->Criadero->delete($id)) {
                        $this->Session->setFlash('El Criadero  ' . $id . ' fue borrado');
                        $this->redirect(array('action' => 'index'), null, true);
                    }
 

            }
            function imprime()
            {
                $this->layout = 'ajax';
            }
            function buscar(){
           // debug($this->data);
            $data=$this->data['dato'];
            $data1 = $this->data['estado'];
            $tipo = $this->data['tipo'];
            
                if($this->data['estado'] != null ){
                    if($data != null){
                     $options=array( 'Criadero.estado' =>$data1,
                                        'OR'=>array(
                                             
                                            'Criadero.nombre LIKE' =>'%'.$data.'%',
                                            'Criadero.nombre LIKE' =>'%'.$data.'%',
                                            'Criadero.Criadero LIKE' =>'%'.$data.'%',
                                            'Criadero.ci LIKE' =>'%'.$data.'%',
                                            'Criadero.correo LIKE' =>'%'.$data.'%'
                                            )
                                        );
                             }else{
                                  $options=array('Criadero.estado' =>$data1);
                                           
                             }
            
                     }elseif($tipo != null){
                         if($data != null){
                             $options=array( 'TipoCriadero.id' =>$tipo,
                                        'OR'=>array(
                                            
                                            'Criadero.nombre LIKE' =>'%'.$data.'%',
                                            'Criadero.nombre LIKE' =>'%'.$data.'%',
                                            'Criadero.Criadero LIKE' =>'%'.$data.'%',
                                            'Criadero.ci LIKE' =>'%'.$data.'%',
                                            'Criadero.correo LIKE' =>'%'.$data.'%'
                                            )
                                        );
                         }else{
                             $options=array(
                                       
                                           'TipoCriadero.id' =>$tipo);
                                            
                         }
                          
                     }
                     else{
                         $options=array(
                                        'OR'=>array(
                                             'Criadero.nombre LIKE' =>'%'.$data.'%',
                                            'Criadero.nombre LIKE' =>'%'.$data.'%',
                                            'Criadero.Criadero LIKE' =>'%'.$data.'%',
                                            'Criadero.ci LIKE' =>'%'.$data.'%',
                                            'Criadero.correo LIKE' =>'%'.$data.'%'
                                            )
                                        );
                     }
    
   
   
       $tipos = $this->TipoCriadero->find('list',array('fields'=>array('TipoCriadero.descripcion')));
      
      
    $result=$this->Criadero->find('all',array('conditions'=>array($options)));
 // debug($result);exit;
     $this->set('tipos', $tipos);
     $this->set('all',$result);
    }
       
    } //fin class distribuidorescontroller
?>